Systems and methods to detect collisions in channel sense multiple access communications

ABSTRACT

Methods and systems to perform collision detection (CD) in a communication network.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent ApplicationNo. 60/594,143, Methods to Exploit Carrier Sensing and CollisionDetection in Multiple Access Communications with MultiPacket Reception,filed Mar. 15, 2005 by D. S. Chan and T. Berger, the content of which ishereby incorporated by reference.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

This invention was made partially with U.S. Government support from theNational Science Foundation, Contract No. CCR-0330059. The U.S.Government has certain rights in the invention.

BACKGROUND OF THE INVENTION

Carrier sense multiple access (CSMA) communications is a method whichemploys the terminal's channel-sensing capability to scheduletransmissions. Each terminal can only attempt transmission when noothers are using the medium. The terminals can determine this conditionby sensing whether there is signal energy at the frequency bandsdesignated by the system for transmission. A terminal will rescheduletheir attempts for a, possibly random, later time when this happens orwhen its transmission is not successful.

An enhancement to CSMA is CSMA with collision detection (CSMA/CD), forwhich a transmitting terminal also continually senses the carrier andwill stop transmission if any other simultaneous transmissions aredetected. As most networks' physical (PHY) layers commonly employsignaling schemes that do not facilitate more than one transmissions ata time, i.e., that a transmission occurring in the presence of anyothers will result into a collision of their signals and none of themwill be received correctly, collision detection can shorten the amountof time the channel is occupied with collisions to the least possible.Subsequently, significant improvement in throughput and delay isachieved. Since the signaling schemes of these PHY layers involve acarrier, CSMA is in fact performed by sensing the presence of thiscarrier; and thus CSMA is also known as carrier sense multiple access inthose contexts.

CSMA/CD has since become the protocol for scheduling packettransmissions in the medium access control (MAC) layer of IEEE 802.3,the de facto standard for wired local area networks (LANs), or what ispopularly known as Ethernet. In these systems, the channel is the commonwire medium—usually a coaxial cable or in recent years perhaps a fiberoptic line—connecting each station in the network. By sensing the signallevel on the wire, stations become aware of when another station alreadyhas started transmission.

CSMA was also chosen as the MAC layers' access methods of the currentlywidely adopted IEEE 802.11 wireless LAN (WLAN) standards (IEEE 802.11,802.11a, 802.11b, 802.11g). Nevertheless, collision detection is notconsidered because it is commonly agreed upon that this can not beeasily implemented in the wireless environment. Different from wiredmediums, during transmission a wireless terminal's antenna radiates asignificant amount of energy which saturates its radio frequency (RF)front-end. And as a result, during this time the terminal can onlyreceive its own RF signal and cannot detect any transmissions fromothers that are at the transmission's frequency. Such a phenomenon iscommonly known as self-interference and is the reason duplex RFcommunications cannot occur at the same frequency.

Duplex RF communications can in fact be performed if the wirelessterminal transmit and receive at different frequencies. For example, theterminal can either employ two antennae for each of these tasks or oneantenna with a circulator. The circulator, also known as the duplexer,is a device that allows the RF transmitter and receiver circuitries toshare an antenna by passing through the relevant signal to each of themas required. In either case, these channels need to be sufficientlyseparated so that a band pass filter can attenuate the transmittedsignal enough for proper decoding of the received signal.

With the structure for duplex RF communications defined, CD in awireless environment can be performed by delegating the detection to thereceiving terminal. The system will have two channels, one for datatransmission and one for transmitting a feedback signal for indicating acollision has occurred. When the receiving terminal detects there ismore than one transmission on the data channel, it will indicate this onthe feedback channel. A transmitting terminal can find out if there is acollision by listening to the feedback channel during the transmission.

The first receiver-initiated CD method was proposed in 1988 by Wu andLi. In their scheme, called the receiver-initiated busy tone multipleaccess (RI-BTMA), the system's bandwidth is divided into two channels,one for data transmission and one for the busy tone. When there istransmission detected on the data channel, the receiver will attempt todecode the preamble of the transmission. If this is successful, asusually is when only one terminal transmits, then the receiver willassert the busy-tone signal until the transmission is over. And soinstead of carrier-sensing the data channel for radio frequencyactivities, in the RI-BTMA scheme terminals monitor the busy-tonechannel to determine when others have already started transmissions. Andfor a terminal that is already transmitting, it can find out if it hasbecome involved in a collision by monitoring whether the receiver hasinitiated the busy-tone channel.

With the terminals performing carrier sensing on the busy-tone channelrather than the data channel, the protocol also solves another problemcommon in wireless networks: the hidden terminal problem. Namely, thisproblem addresses the possibility that a wireless terminal can be withintransmission range from a receiver but out of range from some other(“hidden”) terminals such that their transmissions are not detected. Ifthere are on-going transmissions from these “hidden” terminals and if itdecides to transmit, then collisions will ensue. Since the receivershould be within range of the terminals that are interested incommunicating to it, its busy-tone can be heard by these terminals andso the hidden terminal problem is eliminated.

Wu and Li's RI-BTMA actually only partially solves the hidden terminalproblem since the receiver does not begin to issue any busy tone untilit successfully has decoded the preamble. During the time needed for thereceiver to perform this task, the system is vulnerable to incorrectcarrier sensing as terminals may detect no busy-tone and wrongly thinkthat no others are currently transmitting. Therefore, if the receivercan assert a busy-tone as soon as it detects any potential datatransmission, as in the original non-receiver-initiated BTMA schemeintroduced by Tobagi and Kleinrock, then this vulnerable period would nolonger exist.

Such enhancement to the RI-BTMA is precisely what Gummalla and Limbsuggested in their 2000 paper. In their scheme, named the WirelessCollision Detect (WCD), the busy-tone channel is called the “feedback”channel and the receiver will assert the “carrier detect” signal on itwhen there is any signal energy detected on the data channel. If thereceiver successfully decodes the preamble of this transmission and thatthis transmission is destined for it, then it will begin assertinginstead on the feedback channel the “feedback” signal. If the preambleis not decoded successfully, as will be if there is more than oneconcurrent transmissions, i.e., a collision has occurred, then thereceiver will stop asserting the feedback signal. And similar toRI-BTMA, based on whether this signal is there, the transmittingterminal would know it is involved in a collision, and if so it willterminate its transmission.

The hidden terminal problem actually may not be of concern for somewireless networks. For example, there are networks where terminals areclose to each other, like in a wireless personal area network (WPAN). Inthese cases, just monitoring the data channel for carrier signal energywould be dependable and suffice to perform CSMA. There will also be noneed for a busy-tone or a carrier-detect signal that lasts for thetransmission's duration. A receiver-initiated feedback or CD signalwould still be needed to perform CSMA/CD, though now this signal can bevery short, lasting long enough for the transmitting terminals to detectit.

SUMMARY OF THE INVENTION

In one embodiment, the method for transmitting information in a networkincludes the steps of initiating transmission over a communicationchannel, monitoring a feedback channel, modifying transmissionparameters for the transmission over the communication channel (wheremodifying includes stopping transmission and adjusting transmissionparameters), if a feedback transmission is detected while monitoring thefeedback channel, a duration of the feedback transmission being smallerthan duration of the transmission over the communication channel, anddetermining whether transmission was successful, if transmissioncontinues after modifying transmission parameters.

Other embodiments of methods for transmitting and receiving information,as well as systems that implement the methods, are also disclosed.

For a better understanding of the present invention, together with otherand further needs thereof, reference is made to the accompanyingdrawings and detailed description and its scope will be pointed out inthe appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic flowchart representation of an embodiment of themethod of this invention for transmitting information;

FIGS. 2, 3, 4 are schematic flowchart representations of embodiments ofthe method of this invention for receiving information;

FIG. 5 is a schematic flowchart representation of a section of anotherembodiment of the method of this invention for transmitting information;

FIG. 6 is a schematic graphical representation of a timing diagram forthe embodiment of FIG. 5;

FIG. 7 is a schematic flowchart representation of a section of yetanother embodiment of the method of this invention for transmittinginformation;

FIG. 8 is a schematic graphical representation of a timing diagram forthe embodiment of FIG. 7;

FIG. 9 is a schematic flowchart representation of a section of a furtherembodiment of the method of this invention for transmitting information;

FIG. 10 is a schematic graphical representation of a timing diagram forthe embodiment of FIG. 8;

FIG. 11 is a schematic block diagram representation of an embodiment ofthe transmitting system of this invention;

FIG. 12 is a schematic block diagram representation of an embodiment ofthe receiving system of this invention; and

FIG. 13 represents a schematic block diagram representation of acomponent of the transmitting and/or receiving system of this invention.

DETAILED DESCRIPTION OF THE INVENTION

In an embodiment of the method of this invention, the transmitterssystems detect carrier signal energy on the data channel to determine ifthere are any others using the channel. When the receiver detects acollision, it will broadcast a CD signal on the feedback channel lastingonly for the duration which the participating transmitters would requireto detect it. Each transmitting terminal will monitor the feedbackchannel for the CD signal and stop transmitting if it is present.(Channel sensing, as used herein, can include carrier sensing.)

Although the method of this invention does not explicitly address thehidden terminal problem, with the help of CD, the degradedness inperformance will not be as significant as without. Moreover, the methodof this invention helps conserve energy from the receiver not having totransmit when the channel is active. This can be important if thereceiver is a terminal in an ad hoc network, where each terminal hasfinite battery life.

The present invention can also be extended over PHY layers withmultipacket reception (MPR) capability (as described in co-pendingapplication Ser. No. ______, attorney docket number 10845-168, which isincorporated by reference herein; see also, D. S. Chan, T. Berger and L.Tong, “On the Stability and Optimal Decentralized Throughput of CSMAwith Multipacket Reception Capability,” Proc. of Allerton Conference onComm., Control, and Computing, 2004 and D. S. Chan and T. Berger,“Performance and Cross-Layer Design of CSMA for Wireless Networks withMultipacket Reception Capability,” Proc. of Asilomar Conference onSignals, Systems and Computers, 2004, both of which are incorporated byreference herein). In recent years there have been many new developmentsin signal processing, coding and spread spectrum techniques thatfacilitate receivers' ability to separate and correctly decode multiplepackets transmitted simultaneously over a wireless channel; this isknown as MPR. By applying knowledge of the PHY layer's MPR properties inthe MAC layer's design, the overall system's performance can improvegreatly or even reach the optimum. This idea is known as cross-layerdesign for wireless networks with MPR. Furthermore, the MPR model canalso incorporate characteristics of the channel, like fading or noise.As a result, from modeling a PHY layer with an MPR model, the resultingcross-layered system should have better performance.

Embodiments of systems of this invention can be wired or wireless innature, although the invention circumvents properties found in wirelesschannels that can prevent CD from implemented. The access mode employedalso is not limited to only carrier sensing methods as long as themethod to detect collisions in the invention can still be applied. Theterm “collision” is not limited to situations when a transmissionbecomes corrupted due to more than one other simultaneous transmission;in this invention disclosure the term embodies the more general meaningof any failing transmission or those that are likely to. Two embodimentsof CD methods of this invention include: one that involves broadcastinga busy-tone for MPR-capable only channels and one that does not usebusy-tone for all types of channels.

As previously discussed, the MPR capability refers to any transmissionmethod that allows a receiver to be able to separate and decode thesignals sent simultaneously by multiple transmitters. The decoding canbe error-free or with a feasibly low level of error, and it can becombated with forward error correction coding. Methods for achieving MPRcapability include: (i) space-time coding, (ii) multiple input multipleoutput signaling, (iii) spread spectrum modulation, (iv) frequencyhopping, (v) multiple access coding, and (vi) combinations thereof.

Due to the time needed for signal propagation in the communicationsmedium, changes in the channel's transmission properties may not bereflected at a terminal's location instantaneously. However, such signalchanges always will have arrived at every station after the system'smaximum signal propagation delay, which equals the speed of signalpropagation multiplied by the maximum separation distance between anytwo terminals in the system at least one of which can transmit.

The manner in which the terminals conduct their transmissions can beeither asynchronous or synchronous. For the latter case, time ispartitioned into slots and terminals can initiate transmissions at eachslot's boundary; this is called a slotted-time system. If the slotduration is chosen to be at least the maximum propagation delay, thenchannel activities initiated at the beginning of each slot are reflectedat all the terminals by the start of the next slot. Detection andestimation techniques that are appropriate to whether the transmissionmethod is asynchronous or is synchronous must be employed at thereceiver.

FIG. 1 provides the transmitter's operations for the invention. Wheneverthe terminal has a packet to send 010, the terminal will schedule itstransmission according to the algorithm prescribed by the system 020.After the packet has been transmitted 030, the terminal will monitor thefeedback channel for any CD transmission 040. If the CD transmission isdetected 045, the terminal will decode it 055. If the CD transmissionindicates that the terminal should stop its transmission 085, then theterminal will do so 090 and then reschedule the transmission accordingto the algorithm prescribed by the system 115. In the general case, thefeedback channel can also be used to provide information about the datachannel or the transmitter's transmission. If this is implemented, thenthe transmitting terminal can use this information to adjust itstransmit parameters 075; if not, the flow of operation is equivalent toremoving adjust module 075 and lead 080 and connecting lead 070 directlyto lead 035. In other words, if the CD signal does not require thetransmitting terminal to stop 070, then it continues with thetransmission but at the same time resumes monitoring of the feedbackchannel. The terminal continues this monitoring if the transmission isnot complete 100. If it is finished 105, the terminal will determinewhether it is successful. If it is not 130, then a retransmission isrescheduled 115; this rescheduling may use a different algorithm fromthe one used when transmission is stopped by the CD. If the transmissionis successful, then the transmission process is deemed completed 140.

The flowchart for the receiver's operations for the non-busy-toneversion of our CD method is given in FIG. 2. After the receive processbegins 165, the receiver will start monitoring the channel fortransmissions 170 and decide whether one or more transmissions havebegun 175. This can be achieved, for instance, by detecting an increaseof signal energy in the channel. If no transmissions are detected yet180, the receiver will continue to monitor the channel for them. If itis detected that one or more transmissions is starting 185, then thereceiver will begin to receive these transmissions 190. The exactmechanism for receiving transmissions will depend on the MPR techniqueemployed in the system's PHY layer and is accomplished via anappropriate receiver structure. The receiver will also return to monitorthe channel for subsequent transmissions 195. Because of the paths 180and 195 that feeds back to channel monitor 170, the receiver isconstantly monitoring the channel for transmissions. Therefore, if asubsequent transmission is detected, receive procedures concurrent tothe existing ones will be started for these later transmissions. Inother words, the receive process can be an ongoing one.

During the receiving procedure 190 the receiver will determine whetheror not any transmissions should be terminated 205. If the receiver deemsthat one or more terminals' transmissions would not be decoded properly215, the receiver will notify these terminals 250 to stop transmitting.The relevant terminals can be all of those involved or a selected numberof them of which the receiver deems it would be beneficial to have theirtransmissions terminated. If only a subset of the transmissions is to beterminated 280, the receiver will continue to receive the rest of thetransmissions 255. Since any subsequently started transmissions canoccupy the channel simultaneously with the existing ones, the receivermay also notify these newly transmitting terminals to stop as well. Thefrequency band at which this notification is sent is a different onefrom the data channel. In systems where transmitters can continue toreceive at the frequency that it is transmitting, the notification canbe sent on the same channel. The receiver can also employ MPR techniquesto communicate this feedback as well.

If all transmissions are stopped 275, the receive process initiated forthis batch of transmissions is then complete 285. This is the case for asystem with a non-MPR capable PHY layer. But in fact, for a receiver ofthe cross-layer form with CD, since all transmissions are stopped, allof the receive processes in the receiver will reach completion as well.

Transmittal of successful-receipt acknowledgments can be performed via amechanism that is appropriate for the system, even taking into accountthe MPR technique that is employed. For instance, the receiver can sendon the channel a jamming signal, upon detection of which all thetransmitters will terminate their transmissions.

If the receiver does not wish to stop any transmissions 210, during thereceiving procedure the receiver will also continually determine whetheror not all of the transmissions have finished yet 220; this concernsonly the batch of transmissions which were detected to have started atthe same time in detect transmissions module 175 and for which thereceive procedure 190 was started. If they are all finished 230, and ifthe receiver is responsible for providing feedback to the terminals,then the receiver will send acknowledgements 260 to the involvedterminals informing them of their transmissions' outcomes. However, ifthere are still transmissions unfinished 225, as with the case ofpackets that are not of a uniform length, the receiver will determine ifany of the transmissions from this batch have completed 235. If none ofthem are finished yet 240, the receiver continues receiving thesetransmissions 255. But if some of them are already finished 245, and ifthe receiver is responsible for providing feedback to the terminals,then the receiver will send acknowledgements to the involved terminals290. After this, the receiver continues to receive the rest of thesetransmissions 255. The manner in which the receiver sends theacknowledgements can be the same way as any of those by which thetransmission-termination packets are transmitted, as described above.

The flowchart of FIG. 4 describes not only the receivers of the systeminfrastructure (i.e., the receiving circuitry within what is commonlycalled the system's access points), but also describes the receiveprocesses implemented in the terminals of systems in which terminals arerequired to both transmit and receive data packets. Moreover, if thesystem has a central controller that only monitors the channel forcollision detection, the flowchart of FIG. 4 also can be thiscontroller's receive process. In those cases in which a central CDcontroller does not need to provide acknowledgements, the flowchart forits receive process will be equivalent to removing acknowledgementmodules 260 and 290, and connecting lead 230 to reception completemodule 285 and lead 245 to continue reception module 255. On the otherhand, if the system does not implement CD, then the equivalent flowchartfor each of this system's receivers can be obtained by removing leads210, 215, 265, and 280, terminate transmission decision modules 205 and270, and notification module 250, and connecting lead 200 directly todecision module 220.

The system is not limited to just one central controller monitoring thechannel; if there are more, any one of them can select to terminate theappropriate transmissions if doing so would benefit the performance ofthe system. Similarly, a system may also consist of multiple receivers;for instance, each terminal in the system may wish to receivetransmissions from other terminals. If multiple receivers are present inthe system, and if they are also responsible for monitoring the channelfor collision detection, this can be performed as in said case withmultiple CD controllers. Furthermore, a terminal may consider that itstransmission has been successful 065 only if it has been received byevery one, or by every relevant one of these receivers.

Because this receiver process is for a non-busy-tone system, duration ofthe notification to stop transmission 250 will last only the amount oftime required for the transmitter to detect and decode it. The length ofthis duration is system dependent.

In the general case, the feedback channel can also be used to provideinformation about the data channel or the transmitter's transmission. Inthe non-busy-tone version of the method, this data can be sent invarious ways: 1) Piggybacked with the CD feedback when CD is detected250; 2) Piggybacked with the receipt acknowledgements 260 290; 3)Broadcasted regularly 295; 4) A combination of the above. The durationof these notification packets should also be of a length that is asshort as possible, certainly not a continuously broadcasted signal.

For MPR-capable systems employing the embodiment of this invention withbusy-tone multiple access method, the receiving process is illustratedin FIG. 3. This process is the same as that in the non-busy-tone methodexcept for the broadcasting of the busy-tone. When the receiver detectsany transmissions 185, it will transmit in the feedback channel a signalindicating that the channel is currently being used 305. The receivercan also use this signal to communicate the status of the data channel,for example, the number of terminals currently transmitting. This isupdated periodically 325. We will denote this signal in general to bethe “busy-tone”.

When a collision is detected 215, the receiver will utilize the feedbackchannel to inform the relevant terminals to terminate transmissions. Themanner by which this is performed can involve stopping the busy-tone, sothat all the involving transmitters terminate when they detect this. Inany case, when all the transmissions are finished or terminated, thefeedback channel should be idle 320. The remaining components of thisprocess are identical to that described for the non-busy-tone method inFIG. 2. In MPR-capable systems where transmitters can continue toreceive at the frequency that it is transmitting, the busy tone can infact be sent at this frequency band but via the MPR techniques so thatit is detected.

Several embodiments of the invention are now described and illustratedby the accompanying drawings. It is understood that modifications can bemade to these embodiments and that cognate embodiments exist that alsoare contained within the scope and spirit of the present invention.Therefore, the present invention is not limited to the descriptions ofthese embodiments.

FIGS. 4-6 illustrate a preferred embodiment for a traditional CSMAsystem that does not have any MPR-capabilities employing thenon-busy-tone CD method. FIG. 4 describes the receive process of thissystem. Such a system cannot accommodate more than one concurrenttransmission. If the receiver deems that this is the case, all of thetransmissions are terminated 330. The remaining components of thisprocess are identical to that described for the non-busy-tone method inFIG. 2.

Because this system employs the traditional CSMA method to scheduletransmission, the transmission process is modified by implementing theprocess illustrated in FIG. 5 in the schedule transmission module 020 ofFIG. 1. If the communications network adapts a slotted-time system, thenwhenever a terminal wishes to transmit, it will first ascertain whetherthe timing of the system is at the boundary of a slot 350. If so 360,the terminal will continue with the rest of transmission schedulingprocess; if not 355, it will initiate this process only at a slotboundary. Obviously these steps are unnecessary if the system is notslotted-time; the associated flowcharts can be obtained via removing thecheck slot boundary module 350 and leads 355 and 360 and connecting lead015 directly to the perform carrier sensing module 365. The amount oftime that the terminal performs carrier sensing 365 should be longenough so that the terminal can accurately determine whether the channelis already in use 375. If it is 380, then the terminal will wait for aduration of T 400 before repeating the process of carrier sensing again410. Duration T may be random or computed based on past carrier sensinghistory. If the channel is not already in use 025, then the scheduletransmission process is complete and the terminal begins transmission ofits packet.

In FIG. 6, an example of the transmission activities on the two channelsfor this embodiment is illustrated on a timeline. After the receiverdetected that there are more than one terminals transmitting 380 on thedata channel 405, it will issue a collision detected signal 385 on thefeedback channel 410. After the transmitting terminals detect the CDsignal, they will terminate their transmission 390 and reschedule foranother time. In the event when there is only one transmission 395 andthat it is successfully decoded by the receiver, it will issue anacknowledgment 400 to indicate this result to the terminal.

Several embodiments for a CSMA system that has MPR-capabilities andemploys the busy-tone CD method are now considered. The transmit andreceive processes of such a system for a general MPR-capable PHY layerare first described; more specific MPR channels are then considered.

The receive process of this general MPR system is already described byFIG. 3. But if this CSMA system does not allow new transmissions tostart when the channel is already occupied, then the receive process ofsuch a preferred embodiment can be simplified from FIG. 3 by removinglead 195. The corresponding transmit process is modified by implementingthe process illustrated in FIG. 7 in the schedule transmission module020 of FIG. 1. When the terminal wishes to transmit, it receives thedata sent by the receiver on the feedback channel 415, which containsdescription of the methods used by the current transmissions and thechannel's current conditions. With this information, the terminaldetermines if it is advantageous for its or the overall system'sperformance to begin transmission 420. If it is not 425, then it willreschedule the transmission after duration T as described above. If itis 430, the terminal will compute the best method, using the informationobtained from the feedback channel, to transmit its packet 435; and thentransmit it. The rest of FIG. 7 is identical to that of FIG. 5.

A specific version of the MPR-capable busy-tone CD method is nowdescribed. Consider a embodiment in which each terminal is assigned aunique spreading code that allows correct decoding of its packet as longas the total number of users transmitting simultaneously is less than orequal to n*, where 1≦n*<M and M is the total number of terminals in thesystem. (In other words, the channel's capacity is n*.) This embodimentrepresents many spread spectrum systems used in practice in whichmultiuser detection can perform satisfactorily only when the SIR isbelow a certain level. The receive process for this MPR channel will bethe same as that described above with and not limited to theseadditional task: 1) In the broadcast channel conditions module 325, thereceiver will also send the number of transmission currently using thechannel. 2) A condition used in deciding whether to stop transmissions205 will be whether the current number of transmissions is greater thann*. Similarly, the transmit process for this MPR channel will be thesame as that described in FIG. 7 with and not limited to theseadditional task: 1) In receiving data sent on the feedback channel 415,the terminal will obtain the number of transmissions currently in thechannel. 2) In deciding whether the channel conditions allow fortransmission 425, a condition used is whether the current number oftransmissions is lesser than n*.

An example of the transmission activities on the two channels for thisMPR channel is illustrated on a timeline in FIG. 8. In this example,because the feedback channel 410 has been idle, a number of i 465, lessthan n*, terminals decide to transmit 440. Once the receiver detects thepresence of transmissions, it will issue a busy tone 450 and also begindecoding them. Since i is less than n*, there is no need to terminatethese transmissions. After the receiver determines this, depending onthe system's settings, it broadcasts this number of transmissions on thebusy channel 455. If no new terminals decide to join the current batchof transmissions, when these transmissions are finished and that they'redecoded successfully, an acknowledgement 400 is issued by the receiveron the data channel 405; a busy-tone is also issued during this time towarn other terminals that the data channel 405 is in use. After this j470, less than n*, terminals decide to transmit 480. After detectingtheir presence, the receiver issues a busy tone 490. If this systemselects to not broadcast the current number of transmissions, then 495,start of these. Once the receiver detects the presence of transmissions,it will issue a busy tone 490 and also begin decoding them; the numberof transmissions is also broadcasted 495. Additional terminals decide tojoin the transmission 485, bringing the total number of transmissions tok 475. But because k is greater than n*, all the involving transmissionsare corrupted now. The receiver realizes this and indicates over thefeedback channel that all the transmissions should be terminated 500.Upon detecting this signal, all the involving terminals begin toterminate their transmissions 530.

Another embodiment is a non-busy-tone CSMA/CD system that uses this MPRchannel. The transmit process for this is illustrated in FIG. 9. It is amodified version of the non-MPR-capable channel shown in FIG. 5. Namely,rather than just carrier sensing on the data channel 365, the terminallistens to this channel to obtain its current status 505, such as thenumber of transmissions on the data channel, the codes that they areusing and the channel's fading conditions. Based on this information,the terminal decides whether it is advantageous to begin itstransmissions 510. The corresponding receive process is the same as thatdescribed by FIG. 2, with the condition to stop transmissions 205 to bewhether the current number of transmissions is greater than n*.

FIG. 10 provides an example of the activities on each of the channel.Unlike the busy-tone version of this preferred embodiment, because i isless than n*, the receiver does not need to terminate the first batch ofthese i transmissions 440; thus, no CD signal is issued in the feedbackchannel. This is also the case with the second transmission batch of j,less than n*, terminals 480. However, during their transmissions, someof the remaining terminals determined (from monitoring the data channel)that they should join the transmission as well 515. But in doing so theyalso bring the total number of transmissions to be greater than n*.Accordingly, the receiver issues a CD signal 520 in the feedbackchannel, upon detecting which all the involving transmitters terminatetheir transmissions 525.

An embodiment of the transmitting system of this invention is shown inFIG. 11. Referring to FIG. 11, the embodiment of the transmitting systemof this invention shown therein includes a receiving/transmittingsubsystem 630 which is capable of accessing the communication channel610 and the feedback channel 615 through a physical layer 620 and atransmitter/receiver control subsystem 640 capable of modifyingtransmission parameters for the transmission over the communicationchannel 610 and of determining whether information was successfullytransmitted, A module 650 generates and processes network data packetsthat are transmitted by the transmitting/receiving subsystem 640 on thecontrol of the control subsystem 630. The receiving/transmittingsubsystem 630 includes a transmitter/receiver portion 634 capable oftransmitting information over the communication channel 610 and ofreceiving information transmitted over the feedback channel 615 and ascheduling component 637 capable of scheduling transmission ofinformation over the communication channel 610. The transmitter/receiverportion 634 can be, in one embodiment, but are not limited to, similarto subsystems use in CSMA without MPR (see, for example, U.S. Pat. Nos.6,157,616, and 6,181,683, both of which are incorporated by referenceherein, and L. Kleinrock and F. Tobagi, “Packet Switching in RadioChannels: Part I—Carrier Sense Multiple-Access Modes and TheirThroughput-Delay Characteristics,” IEEE Trans. Comm., vol. 23, pp.1400-1416, 1975, also incorporated by reference herein; see also D. S.Chan, T. Berger and L. Tong, “On the Stability and Optimal DecentralizedThroughput of CSMA with Multipacket Reception Capability,” Proc. ofAllerton Conference on Comm., Control, and Computing, 2004, and D. S.Chan and T. Berger, “Performance and Cross-Layer Design of CSMA forWireless Networks with Multipacket Reception Capability,” Proc. ofAsilomar Conference on Signals, Systems and Computers, 2004, both ofwhich are also incorporated by reference herein). The control subsystem640 implements the methods of this invention for transmittinginformation, as disclosed hereinabove, in a protocol for transmissionenabling transmission with CD.

In one embodiment, the transmitter/receiver subsystem 630 includes aslotted-time transmitter sub-system. In that embodiment, thetransmitter/receiver control subsystem 640 is capable of ascertaining atiming of transmission in relation to a timeslot. (ExemplarySlotted-time transmitter subsystems can be, but are not limited to,similar to systems described in Tobagi, F. Analysis of a Two-HopCentralized Packet Radio Network—Part I: Slotted ALOHA, IEEETransactions on Communication, Volume 28, Issue 2, Date: February 1980,Pages: 208-216, incorporated by reference herein, and in Kobayashi, T.;Sugihara, A.; Enomoto, K.; Sasase, Slotted nonpersistent CSMA with anadaptive array and canceling signal, Global TelecommunicationsConference, 1996. GLOBECOM '96. ‘Communications: The Key to GlobalProsperity, Volume 1, Date: 18-22 November 1996, Pages: 565-569 vol. 1,also incorporated by reference herein.)

In one instance, the physical layer 620 comprises wireless access to thecommunication channel 610 and the feedback channel 615. It should benoted that other instances of the physical layer 620, such as, but notlimited to, wired systems are also within the scope of this invention.

In one embodiment, such as that shown in FIG. 13, thetransmitter/receiver control subsystem 640 includes one or moreprocessors 810, and computer usable media 830 having computer readablecode embodied therein capable of causing one or more processors 810 toimplement the methods of this invention. The one or more processors 810,the computer usable media 830, and the other components of FIG. 11 areoperatively connected by means of a connection component 815 (theconnection component may be, for example, a computer bus, or a carrierwave).

An embodiment of the receiving system of this invention is shown in FIG.12. Referring to FIG. 7, the embodiment of the receiving system of thisinvention shown therein includes, a reception/transmission controlsubsystem 740 capable of determining whether transmissions over acommunication channel are present, of initiating receipt oftransmissions, of determining whether to stop any transmission, and ofdetermining whether any transmissions has been completed, areceiving/transmitting subsystem 730 capable of receiving transmissionsand of notifying, over a feedback channel, transmitting nodes of outcomedeterminations. The receiving/transmitting subsystem 730 is capable ofreceiving control information from the reception/transmission controlsubsystem 740 and of receiving determinations of transmissionscompletion and of transmission stoppage from the reception/transmissioncontrol subsystem 740. The receiving/transmitting subsystem 730 iscapable of receiving transmissions from the communication channel 710over a physical layer 720. A module 750 utilizes the received packets.The control subsystem 740 implements the methods of this invention forreceiving information, as disclosed hereinabove, in a protocol enablingtransmission with CD. The receiving/transmitting subsystem 730 can be,in one embodiment, but are not limited to being, similar to subsystemsused in CSMA without MPR.

In one embodiment the transmitter and receiver systems of this inventionare similar to conventional systems with CD (such as those described inA. C. V. Gummalla and J. O. Limb, “Design of an access mechanism for ahigh speed distributed wireless LAN,” IEEE Journal on Selected Areas inCommunications, vol. 18, Issue 9, pp. 1740-1750, September 2000 and inU.S. Pat. Nos. 6,804,251 and 4,063,220, the three of which areincorporated by reference herein) except that a CD signal is broadcastedon the feedback channel only for the duration which the participatingtransmitters would require to detect it.

In one embodiment, such as that shown in FIG. 13, the control subsystem740 includes one or more processors 810, and computer usable media 830having computer readable code embodied therein capable of causing one ormore processors 810 to implement the methods of this invention. The oneor more processors 810, the computer usable media 830, and the othercomponents of FIG. 12 are operatively connected by means of a connectioncomponent 815 (the connection component may be, for example, a computerbus, or a carrier wave).

The techniques described above may be implemented in one or morecomputer programs executing on a programmable computer including aprocessor, a storage medium readable by the processor (including, forexample, volatile and non-volatile memory and/or storage elements), and,in some embodiments, also including at least one input device, and/or atleast one output device. Program code may be applied to data enteredusing the input device (or user interface) to perform the functionsdescribed and to generate output information. The output information maybe applied to one or more output devices.

Elements and components described herein may be further divided intoadditional components or joined together to form fewer components forperforming the same functions.

Each computer program (computer readable code) may be implemented in anyprogramming language, such as assembly language, machine language, ahigh-level procedural programming language, an object-orientedprogramming language, or a combination thereof. The programming languagemay be a compiled or interpreted programming language.

Each computer program may be implemented in a computer program producttangibly embodied in a computer-readable storage device for execution bya computer processor. Method steps of the invention may be performed bya computer processor executing a program tangibly embodied on acomputer-readable medium to perform functions of the invention byoperating on input and generating output.

Common forms of computer-readable (computer usable) media include, forexample, a floppy disk, a flexible disk, hard disk, magnetic tape, orany other magnetic medium, a CDROM, any other optical medium, punchedcards, paper tape, any other physical medium with patterns of holes orother patterns, a RAM, a PROM, and EPROM, a FLASH-EPROM, any othermemory chip or cartridge, a carrier wave, such as electromagneticradiation or electrical signals, or any other medium from which acomputer can read.

Although the invention has been described with respect to variousembodiments, it should be realized this invention is also capable of awide variety of further and other embodiments within the spirit andscope of the appended claims.

1. A method for transmitting information in a network, the methodcomprising the steps of: initiating transmission over a communicationchannel; monitoring a feedback channel; modifying transmissionparameters for the transmission over the communication channel, if afeedback transmission is detected while monitoring the feedback channel,a duration of the feedback transmission being smaller than duration ofthe transmission over the communication channel; determining whethertransmission was successful, if transmission continues after modifyingtransmission parameters.
 2. The method of claim 1 wherein the step ofmodifying transmission parameters comprises a steps of: determining iftransmission should stop; and rescheduling transmission, it transmissionis stopped.
 3. The method of claim 1 further comprising the step of:rescheduling transmission, if transmission was not successful.
 4. Amethod for receiving information over a communication channel, themethod comprising the steps of: monitoring the communication channel fortransmission; determining whether at least one transmission is presentin the communication channel; initiating receipt of the at least onetransmission, if at least one transmission is present in thecommunication channel; determining whether the at least one transmissionshould be stopped; determining whether, if the at least one transmissionis not stopped, whether transmission has been completed; notifying atleast one transmitting node of outcome of determination, a duration of anotifying transmission being smaller than duration of transmission overthe communication channel.
 5. The method of claim 4 further comprisingthe step of: transmitting, if at least one transmission is present, afeedback signal over a feedback channel, a duration of the feedbacksignal being smaller than duration of said at least one transmissionover the communication channel.
 6. The method of claim 5 wherein atleast one transmitting node ceases transmission based on said feedbacksignal.
 7. The method of claim 4 where in the step of notifyingtransmitting nodes of outcome determinations comprises the step of:notifying, if it is determined that at least one transmission has beencompleted, a node transmitting the at least one transmission ofcompletion.
 8. The method of claim 4 wherein the step of notifyingtransmitting nodes of outcome determinations comprises the step of:notifying, if it is determined that the at least one transmission shouldbe stopped, a node transmitting the at least one transmission to stoptransmitting.
 9. The method of claim 4 further comprising the step of:if all transmissions have not been stopped, providing communicationchannel conditions to transmitting nodes.
 10. The method of claim 4further comprising the step of: if it is determined that alltransmissions should be stopped, notifying all transmitting nodes tostop transmission.
 11. The method of claim 1 further comprising the stepof scheduling transmission.
 12. The method of claim 11 wherein the stepof scheduling transmission comprises the steps of: receiving data overthe communication channel; determining communication channel informationfrom the received data; determining, utilizing the communication channelinformation, whether to transmit.
 13. The method of claim 12 wherein thestep of scheduling transmission further comprises the step of:scheduling, after determining not to transmit, attempted transmissionafter a predetermined time interval.
 14. The method of claim 11 whereina slotted-Time system is used for transmission; and wherein the step ofscheduling transmission comprises the step of ascertaining a timing oftransmission in relation to a timeslot.
 15. The method of claim 11wherein the step of scheduling transmission further comprises the stepsof: receiving feedback channel information; determining, utilizing thefeedback channel information, whether to transmit.
 16. The method ofclaim 15 wherein the step of scheduling transmission further comprisesthe step of: scheduling, after determining not to transmit, attemptedtransmission after a predetermined time interval.
 17. The method ofclaim 15 wherein a slotted-Time system is used for transmission; andwherein the step of scheduling transmission comprises the step ofascertaining a timing of transmission in relation to a timeslot.
 18. Themethod of claim 15 wherein the step of scheduling transmission furthercomprises the step of: determining transmission parameters, afterdetermining to transmit.
 19. The method of claim 15 wherein the step ofreceiving feedback channel information comprises the step of obtaining anumber of transmissions present in the communications channel; andwherein the step of determining whether to transmit comprises the stepof determining whether the number of transmissions is at most equal to apredetermined number of transmissions.
 20. The method of claim 11wherein the step of scheduling transmission comprises the steps of:receiving data over the communication channel; determining, from thereceived data, whether the communication channel is in use; schedulingtransmission, after determining the communication channel not to be inuse.
 21. The method of claim 20 wherein the step of schedulingtransmission further comprises the step of: scheduling, afterdetermining the communication channel to be in use, attemptedtransmission after a predetermined time interval.
 22. The method ofclaim 20 wherein a slotted-Time system is used for transmission; andwherein the step of scheduling transmission comprises the step ofascertaining a timing of transmission in relation to a timeslot.
 23. Atransmitter system comprising: a transmitter/receiver subsystemcomprising: a transmitter/receiver portion capable of transmittinginformation over a communication channel and of receiving informationtransmitted over a feedback channel; said transmitter/receiver subsystembe capable of accessing the communication channel and the feedbackchannel through a physical layer; and a scheduling component capable ofscheduling transmission of information over the communication channel,and a transmitter/receiver control subsystem capable of modifyingtransmission parameters for the transmission over the communicationchannel and of determining whether information was successfullytransmitted; a duration of feedback transmission over the feedbackchannel being smaller than duration of transmission over thecommunication channel.
 24. The transmitter system of claim 23 whereinsaid transmitter/receiver control subsystem is also capable ofdetermining if transmission should stop and of reschedulingtransmission, it transmission is stopped.
 25. The transmitter system ofclaim 23 wherein said transmitter/receiver control subsystem is alsocapable of rescheduling transmission, if transmission was notsuccessful.
 26. The transmitter system of claim 23 wherein aslotted-Time system is used for transmission; and wherein saidscheduling component is also capable of ascertaining a timing oftransmission in relation to a timeslot; a duration of feedbacktransmission over the feedback channel being at least one time slot. 27.The transmitter system of claim 23 wherein said transmitter/receivercontrol subsystem comprises: at least one processor; and at least onecomputer usable medium having computer readable code embodied there in,said computer readable code being capable of causing said at least oneprocessor to: modify transmission parameters for the transmission overthe communication channel, if a feedback transmission is detected whilemonitoring the feedback channel; determine whether transmission wassuccessful, if transmission continues after modifying transmissionparameters
 28. The transmitter system of claim 27 wherein said computerreadable code, in causing said at least one processor to modifytransmission parameters, is capable of causing said at least oneprocessor to: determine if transmission should stop; and rescheduletransmission, it transmission is stopped.
 29. The transmitter system ofclaim 27 wherein said computer readable code is also capable of causingsaid at least one processor to: reschedule transmission, if transmissionwas not successful.
 30. The transmitter system of claim 23 wherein saidscheduling component comprises: at least one processor; and at least onecomputer usable medium having computer readable code embodied there in,said computer readable code being capable of causing said at least oneprocessor to: receive data over the communication channel; determinecommunication channel information from the received data; determining,utilizing the communication channel information, whether to transmit.31. The transmitter system of claim 30 wherein said computer readablecode is also capable of causing said at least one processor to:schedule, after determining not to transmit, attempted transmissionafter a predetermined time interval.
 32. The transmitter system of claim30 wherein said computer readable code is also capable of causing saidat least one processor to: determine transmission parameters, afterdetermining to transmit.
 33. The transmitter system of claim 23 whereinsaid scheduling component comprises: at least one processor; and atleast one computer usable medium having computer readable code embodiedthere in, said computer readable code being capable of causing said atleast one processor to: receive feedback channel information; determine,utilizing the feedback channel information, whether to transmit.
 34. Thetransmitter system of claim 33 wherein said computer readable code isalso capable of causing said at least one processor to: schedule, afterdetermining not to transmit, attempted transmission after apredetermined time interval.
 35. The transmitter system of claim 33wherein, in receiving feedback channel information, said computerreadable code is capable of causing said at least one processor toobtain a number of transmissions present in the communications channel;and wherein, in determining whether to transmit, said computer readablecode is capable of causing said at least one processor to determinewhether the number of transmissions is at most equal to a predeterminednumber of transmissions.
 36. The transmitter system of claim 23 whereinsaid scheduling component comprises: at least one processor; and atleast one computer usable medium having computer readable code embodiedthere in, said computer readable code being capable of causing said atleast one processor to: receive data over the communication channel;determine, from the received data, whether the communication channel isin use; schedule transmission, after determining the communicationchannel not to be in use.
 37. A receiver system comprising: areception/transmission control subsystem capable of determining whethertransmissions over a communication channel are present, of initiatingreceipt of transmissions, of determining whether to stop anytransmission, and of determining whether any transmissions has beencompleted; and a receiving/transmitting subsystem capable of receivingtransmissions and of notifying, over a feedback channel, transmittingnodes of outcome determinations; said receiving/transmitting subsystembeing capable of receiving control information from saidreception/transmission control subsystem and of receiving determinationsof transmissions completion and of transmission stoppage from saidreception/transmission control subsystem; said receiving/transmittingsubsystem being capable of receiving transmissions from a communicationchannel; a duration of notifying transmission over the feedback channelbeing smaller than duration of transmission over the communicationchannel.
 38. The transmitter system of claim 37 wherein saidreceiving/transmitting subsystem is also capable of transmitting, if atleast one transmission is present, a feedback signal over the feedbackchannel, a duration of the feedback signal being smaller than durationof said at least one transmission over the communication channel. 39.The transmitter system of claim 37 wherein said reception/transmissioncontrol subsystem comprises: at least one processor; and at least onecomputer usable medium having computer readable code embodied there in,said computer readable code being capable of causing said at least oneprocessor to: determine whether at least one transmission is present inthe communication channel; initiate receipt of the at least onetransmission, if at least one transmission is present in thecommunication channel; determine whether the at least one transmissionshould be stopped; determine whether, if the at least one transmissionis not stopped, whether transmission has been completed; notify at leastone transmitting node of outcome of determination, a duration of anotifying transmission being smaller than duration of transmission overthe communication channel.